package com.jieli.bt.att.tool.ble.interfaces;

import com.jieli.bt.att.tool.ble.model.ScanDeviceInfo;

/**
 * IBtScanCallback
 * @author zqjasonZhong
 * @since 2025/3/27
 * @email zhongzhuocheng@zh-jieli.com
 * @desc 蓝牙搜索事件回调
 */
public interface IBtScanCallback {
    /**
     * 蓝牙适配器开关回调
     *
     * @param bEnabled 开关
     */
    void onAdapterChange(boolean bEnabled);

    /**
     * 搜索蓝牙设备的状态回调
     *
     * @param bStart 搜索状态
     */
    void onDiscoveryState(boolean bStart);

    /**
     * 发现蓝牙设备的回调
     *
     * @param scanDeviceInfo BLE扫描数据
     */
    void onDiscoveryDevice(ScanDeviceInfo scanDeviceInfo);

    /**
     * 搜索失败回调
     *
     * @param code int  错误码
     * @param message String 错误描述
     */
    void onDiscoveryFail(int code, String message);
}
